//package com.example.sample.Infrastructure.Thread;
//
//import sun.misc.Unsafe;
//
//import java.lang.reflect.Field;
//
//
//public class TestCAS {
//
//    private volatile int state =0;
//    private static long stateOffset;
//    private static final Unsafe unsafe = getUnsafe();
//
//    static {
//
//        try {
//            stateOffset = unsafe.objectFieldOffset(TestCAS.class.getDeclaredField("state"));
//        } catch (NoSuchFieldException e) {
//            e.printStackTrace();
//        }
//    }
//
//    public void Test() {
//        //state = 1;
//        boolean b= unsafe.compareAndSwapInt(this, stateOffset, 1, 0);
//        System.out.println(b);
//    }
//
//
//    private static Unsafe getUnsafe(){
//        try {
//            Field fiele =Unsafe.class.getDeclaredField("theUnsafe");
//            fiele.setAccessible(true);
//            return (Unsafe) fiele.get(null);
//        } catch (NoSuchFieldException e) {
//            e.printStackTrace();
//        } catch (IllegalAccessException e) {
//            e.printStackTrace();
//        }
//        return null;
//    }
//
//}
